Move all backend specific raise/lower code into _internal helpers
authorAlexander Larsson <alexl@redhat.com>
Mon, 19 Jan 2009 09:40:13 +0000 (10:40 +0100)
committerAlexander Larsson <alex@localhost.localdomain>
Thu, 2 Apr 2009 08:15:19 +0000 (10:15 +0200)
gdk/gdkwindow.c

index ef89881178808ee9e415fd5e2140a5b876c9e41f..b7125bfa38d213a644ff82b3db280d1b34be8305 100644 (file)
@@ -5178,6 +5178,9 @@ gdk_window_raise_internal (GdkWindow *window)
       parent->children = g_list_remove (parent->children, window);
       parent->children = g_list_prepend (parent->children, window);
     }
+
+  if (gdk_window_has_impl (private))
+    GDK_WINDOW_IMPL_GET_IFACE (private->impl)->raise (window);
 }
 
 static void
@@ -5212,13 +5215,8 @@ gdk_window_show_internal (GdkWindow *window, gboolean raise)
   was_mapped = GDK_WINDOW_IS_MAPPED (window);
   
   if (raise)
-    {
-      /* Keep children in (reverse) stacking order */
-      gdk_window_raise_internal (window);
-      
-      if (gdk_window_has_impl (private))
-       GDK_WINDOW_IMPL_GET_IFACE (private->impl)->raise (window);
-    }
+    /* Keep children in (reverse) stacking order */
+    gdk_window_raise_internal (window);
 
   if (gdk_window_has_impl (private))
     {
@@ -5300,9 +5298,6 @@ gdk_window_raise (GdkWindow *window)
   /* Keep children in (reverse) stacking order */
   gdk_window_raise_internal (window);
 
-  if (gdk_window_has_impl (private))
-    GDK_WINDOW_IMPL_GET_IFACE (private->impl)->raise (window);
-
   recompute_visible_regions (private, TRUE, FALSE);
 
   gdk_window_invalidate_rect (window, NULL, TRUE);
@@ -5319,6 +5314,9 @@ gdk_window_lower_internal (GdkWindow *window)
       parent->children = g_list_remove (parent->children, window);
       parent->children = g_list_append (parent->children, window);
     }
+
+  if (gdk_window_has_impl (private))
+    GDK_WINDOW_IMPL_GET_IFACE (private->impl)->lower (window);
 }
 
 static void
@@ -5376,9 +5374,6 @@ gdk_window_lower (GdkWindow *window)
 
   recompute_visible_regions (private, TRUE, FALSE);
   
-  if (gdk_window_has_impl (private))
-    GDK_WINDOW_IMPL_GET_IFACE (private->impl)->lower (window);
-
   _gdk_syntesize_crossing_events_for_geometry_change (window);
   gdk_window_invalidate_in_parent (private);
 }